//
// Created by wkm on 2023-12-03.
//

#ifndef MYSYSTEMCLEARNING_SEQ_DET_H
#define MYSYSTEMCLEARNING_SEQ_DET_H

#include "systemc.h"

SC_MODULE(seq_det) {
    sc_in<bool> clk, data;
    sc_out<bool> seq_found;

    // 同步逻辑进程
    void prc_seq_det();

    // 组合逻辑进程
    void prc_output();

    // 进程间的通信信号
    sc_signal<bool> first, second, third;

    SC_CTOR(seq_det) {
        SC_METHOD(prc_seq_det);
        // 沿敏感
        sensitive_pos << clk;
        SC_METHOD(prc_output);
        // 事件敏感
        sensitive << first << second << third;
    }
};

#endif //MYSYSTEMCLEARNING_SEQ_DET_H
